using System;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("TutorialEntity")]
	public class TutorialEntity : MissionEntity
	{
		public Notification thatsABadPlayPopup => method_3<Notification>("thatsABadPlayPopup");

		public Notification manaReminder => method_3<Notification>("manaReminder");

		public TooltipPanel historyTooltip => method_3<TooltipPanel>("historyTooltip");

		public static float TUTORIAL_DIALOG_SCALE_PHONE => MonoClass.smethod_6<float>(TritonHs.MainAssemblyPath, "", "TutorialEntity", "TUTORIAL_DIALOG_SCALE_PHONE");

		public static Vector3 HELP_POPUP_SCALE => MonoClass.smethod_6<Vector3>(TritonHs.MainAssemblyPath, "", "TutorialEntity", "HELP_POPUP_SCALE");

		public TutorialEntity(IntPtr address, string className)
			: base(address, className)
		{
		}

		public TutorialEntity(IntPtr address)
			: this(address, "TutorialEntity")
		{
		}

		public static Vector3 GetTextScale()
		{
			return MonoClass.smethod_14<Vector3>(TritonHs.MainAssemblyPath, "", "TutorialEntity", "GetTextScale", Array.Empty<object>());
		}

		public new void HandleMulliganTagChange()
		{
			method_8("HandleMulliganTagChange");
		}

		public void HighlightTaunters()
		{
			method_8("HighlightTaunters");
		}

		public new bool NotifyOfTooltipDisplay(TooltipZone tooltip)
		{
			return method_11<bool>("NotifyOfTooltipDisplay", new object[1] { tooltip });
		}

		public new void NotifyOfHeroesFinishedAnimatingInMulligan()
		{
			method_8("NotifyOfHeroesFinishedAnimatingInMulligan");
		}

		public new bool ShouldDoOpeningTaunts()
		{
			return method_11<bool>("ShouldDoOpeningTaunts", Array.Empty<object>());
		}

		public new bool ShouldHandleCoin()
		{
			return method_11<bool>("ShouldHandleCoin", Array.Empty<object>());
		}

		public new bool NotifyOfBattlefieldCardClicked(Entity clickedEntity, bool wasInTargetMode)
		{
			return method_11<bool>("NotifyOfBattlefieldCardClicked", new object[2] { clickedEntity, wasInTargetMode });
		}

		public void ShowDontHurtYourselfPopup(Vector3 origin)
		{
			method_8("ShowDontHurtYourselfPopup", origin);
		}

		public void HandleGameStartEvent()
		{
			method_8("HandleGameStartEvent");
		}

		public void UserPressedStartButton(UIEvent e)
		{
			method_8("UserPressedStartButton", e);
		}

		public TutorialNotification ShowTutorialDialog(string headlineGameString, string bodyTextGameString, string buttonGameString, Vector2 materialOffset, bool swapMaterial)
		{
			return method_14<TutorialNotification>("ShowTutorialDialog", new object[5] { headlineGameString, bodyTextGameString, buttonGameString, materialOffset, swapMaterial });
		}

		public new void NotifyOfHistoryTokenMousedOver(GameObject mousedOverTile)
		{
			method_8("NotifyOfHistoryTokenMousedOver", mousedOverTile);
		}

		public new void NotifyOfHistoryTokenMousedOut()
		{
			method_8("NotifyOfHistoryTokenMousedOut");
		}

		public void NotifyOfManaError()
		{
			method_8("NotifyOfManaError");
		}

		public void SetTutorialProgress(TutorialProgress val)
		{
			method_8("SetTutorialProgress", val);
		}

		public void SetTutorialLostProgress(TutorialProgress val)
		{
			method_8("SetTutorialLostProgress", val);
		}

		public bool DidLoseTutorial(TutorialProgress val)
		{
			return method_11<bool>("DidLoseTutorial", new object[1] { val });
		}

		public void ResetTutorialLostProgress()
		{
			method_8("ResetTutorialLostProgress");
		}
	}
}
